package com.library.dao;

import java.awt.print.Book;
import java.util.Date;
import java.util.List;
import com.library.entity.*;

public interface BorrowRepository {

    /**
     *
     * @return 所有borrowRequest按请求时间排序的列表
     */
    public List<BorrowRequest> findAll(long userId);

    /**
     *
     * @param offset 起始点
     * @param limit  页长度
     * @return borrowRequest列表
     */
    public List<BorrowRequest> findByPage(int offset,int limit);

    /**
     *
     * @param useName 用户名
     * @return 该用户borrowRequest列表
     */
    public List<BorrowRequest> findByUserName(String useName);

    /**
     *
     * @param approverName 审核者名字
     * @return 审核者审核的所有borrowRequest列表
     */
    public List<BorrowRequest> findByApproverName(String approverName);

    /**
     *
     * @param ISBN 添加的borrowRequest
     */
    public List<BorrowRequest> findByISBN(String ISBN);

    /**
     *
     * @param borrowRequest 借阅请求
     */
    public void addBorrowRequest(List<BorrowRequest> borrowRequest);

    /**
     *
     * @return 总borrowRequest数量
     */
    public int countBorrowRequest();

    /**
     *
     * @param id br的id
     * @param approvedTime 审核通过时间
     */
    public void agreeBorrowRequest(long id,Date approvedTime);

    /**
     *
     * @param id br的id
     */
    public void rejectBorrowRequest(long id );

    /**
     * @param id br的id
     * @param returnTime 归还时间
     */
    public void returnBorrowRequest(long id,Date returnTime);

    /**
     *
     * @param id br的id
     */
    public void deleteBorrowRequest(long id);
}
